<?php
/**
 * Controller de Pagos.
 *
 *
 * @filesource          
 * @copyright		
 * @link		http://www.pragmatia.com Pragmatia
 * @package		datagro
 * @subpackage	app.controllers
 * @version     1.1
 * @license		http://www.opensource.org/licenses/mit-license.php The MIT License
 * @author      Marcelo Entraigas <mentraigas@pragmatia.com.ar>
 */


/**
 * Clase PagosController
 *
 * @package	    datagro
 * @subpackage	app.controllers
 */

class  PagosController extends AppController{
    var $name = 'Pagos';
	var $uses = array('Pago','Documento');

	/**
	 * Recibe datos que vienen en un POST
	 * desde cobro digital
	 */
    function recibir(){
		//los datos vienen por post
		$datos = $_POST;
		//valido datos
		if( empty($datos) ) die;
		
		//parseo el xml en busca del campo "Identificador"
		$string = str_replace('Calculo fecha','Calculo_fecha',$_POST['concepto']);
		$xml = simplexml_load_string($string);
		if( isset($xml->Identificador) ){
			$datos['comprobante'] = (string) $xml->Identificador;
		}
		//guardo en BD
		if( !$this->Pago->save($datos) ){
			//error en el formato de los campos
			die;
		}
		//marco como pagado el comprobante
		if( isset($datos['comprobante']) ){
			$conditions = array(
				'Documento.numero' => $datos['comprobante']
			);
			$tmp = $this->Documento->findAll( array('conditions'=>$conditions) );
			if( count($tmp)==1
			   && isset($tmp[0]['Documento']['id'])
			   && intval($tmp[0]['Documento']['id'])
			){
				//encontre el comprobante
				$id = $tmp[0]['Documento']['id'];
				$factura = array(
					'id' => $id,
					'pagado' => 1
				);
				$this->Documento->save($factura);
			}
		}
		
		//dejo un log el post entero
		$log = "\nPOST " . date('Y-m-d H:i:s');
		foreach( $datos as $key=>$value ){
			$log.= "\n\t{$key}=>{$value}";
		}
		$file = TMP . 'logs/pagos_' . date('Y-m') . '.log';
		@file_put_contents($file, $log, FILE_APPEND);
		
		//corto la ejecucion
		die;
	}


}
?>